Printing system

ABSTRACT

In order to carry out a printing operation without waiting for a while in the case in which a printing device receiving printing job data cannot execute the printing operation for some reason, a plurality of printing devices ( 100 ) which are network-connected are formed into groups based on a processable language and one of the printing devices belonging to the same language group is caused to act as a managing printing device. The managing printing device receives a status signal from all the printing devices belonging to the same language group, and distributes the printing job data transmitted from the printing device to the other printing devices belonging to the same language group when any of the printing devices cannot carry out the printing operation. In this case, one printing device for supporting a plurality of languages can be set as a managing printing device which is common to each group.

This application is based on applications Nos. 11-92650 and 11-101225 filed in Japan, the contents of which is hereby incorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a printing system, and more particularly to a system capable of carrying out a printing operation without waiting for a while if a printing device (hereinafter referred to as a printer) receiving printing job data cannot execute the printing operation due to some reason.

2. Description of the Related Art

In recent years, there has been proposed a printing system in which a plurality of host computers and a plurality of printers are connected through a network line and a printing operation can be executed when printing job data is transmitted from any of the host computers to one of the printers.

For example, there has been known a printing system in which a printer having the function and performance desired by a user is automatically selected from a plurality of printers by means of a host computer or a printer managing device (see Japanese Patent Laid-Open Publications Nos. 6-242899 and 7-141128).

However, the above-mentioned conventional printing system has had the following problem. More specifically, if one of the printers is specified to transmit printing job data and a large number of printing jobs have had been cued in the printer, the next printing operation cannot be carried out until the processing is completed. Therefore, it takes a long time to complete the printing operation.

SUMMARY OF THE INVENTION

In consideration of such a problem, it is an object of the present invention to provide a printing system capable of carrying out a printing operation without waiting for a while even if printing jobs are concentrated in a printer.

The present invention provides a printing system in which a plurality of printing devices are connected to each other through a network line and printing job data transmitted from a data processing device is received by the printing devices to carry out a printing operation, the printing system comprising at least printing means for causing the printing devices to execute a printing operation based on the printing job data, communicating means for transmitting and receiving data together with the other printing devices and storing means for storing device information of the other printing devices, wherein the printing devices are formed into groups based on a processable language, one of the printing devices belonging to the same language group is caused to act as a managing printing device, device information of all the printing devices belonging to a language group which can be processed by the managing printing device are stored, and job data is transferred to the other printing devices belonging to the same language group when the job data is transferred from any of the printing devices.

The present invention is characterized in that a managing printer for supporting at least two printer languages is provided and the managing printer transfers the printing job data to the other printers belonging to the same language group so as to execute a printing operation if the printer receiving the printing job data cannot execute the printing operation for some reason. Consequently, in the case in which a large number of printing jobs are cued in one printer or printer errors are made and the shortage of a paper or the like is caused, the printing operation can be executed without waiting for a while. If a host computer investigates a network environment to examine the performance, conditions and the like of each printer, thereby automatically selecting the managing printer, an optimum printer according to various conditions can be selected from the network environment.

Moreover, the printers for supporting a language which can be processed are previously formed into groups for storage by the managing printer. Therefore, the allotment of the printing job data can be carried out more efficiently than the case in which a printer desired by a user is selected by the host computer or the printer managing device to transmit the printing job data. In addition, the user does not need to confirm the state of the printer.

The managing printer may be automatically selected by the host computer (data processing device).

More specifically, the data processing device may include automatic selecting means for processing at least two languages from the device information of the printing devices and selecting, as the managing printing device, a printing device having a high data processing capability, grouping means for forming the printing devices into groups based on the language which can be processed by the managing printing device, and communicating means for transmitting the device information of the printing device belonging to a processable language group to the managing printing device and informing the printing device other than the managing printing device of a managing device of a language group to which the printing device itself belongs.

Furthermore, when the managing printer is selected by the host computer, the task processing of the host computer itself is heavy, the managing printer can be selected by provisionally performing the user's manual operation in place of the automatic selection by the host computer in the case in which the processing capability is reduced or troubles are made on the network. Thus, flexible countermeasures can be taken.

More specifically, the data processing device may further include manual selecting means capable of optionally selecting a managing printing device from the device information of the printing devices by the user's operation.

Moreover, it is preferable that the other printers to transfer the printing job data from the managing printer should belong to the same language group. For example, the printing job data can also be transferred to a printer having a high data processing capability. However, in the case in which the printing job data should be newly transferred after the transfer of the printing job data and the printing job data requires a high data processing capability, a printer having a low data processing capability cannot be applied. Therefore, it is preferable that the printer to transfer the printing job data should be sequentially selected from the printers having a lower data processing capability.

More specifically, it is preferable that the managing printing device should transfer the printing job data from any of the printing devices to one of the printing devices belonging to the same language group and having the lowest data processing capability when the printing job data is transferred.

Furthermore, the printer to be used for the printing system described above is also novel. According to the present invention, it is possible to provide a printing device to be used for a printing system in which a plurality of printing devices are connected to each other through a network line and to receive printing job data from a data processing device, thereby carrying out a printing operation, the printing device comprising printing means for executing the printing operation based on the printing job data, storing means for storing device information of the other printing devices which can process a language common to a self-processable language when the printing device itself is selected as a managing printing device and for storing a self managing printing device when the printing device itself is not the managing printing device, and communicating means for transferring the printing job data to the managing printing device in such a situation that the printing operation cannot be carried out when the printing device itself is not the managing printing device and for transferring the printing job data to the selected printing device when the printing device itself is the managing printing device.

Any data processing device for processing a signal and outputting printing job data can be used. In general, a host computer is used one data processing device or more may be provided. The data processing device and the printer may be connected through any means, and can be connected to each other through a network line, for example.

This object as well as other objects, features and advantages of the invention will become more apparent to those skilled in the art from the following description with reference to the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other objects and features of the present invention will become clear from the following description taken in conjunction with the preferred embodiments thereof and the accompanying drawings throughout which like parts are designated by like reference numerals, and in which:

FIG. 1 is a view showing the structure of a printing system according to a first embodiment of the present invention;

FIG. 2 is a functional block diagram showing the structure of a host computer according to the first embodiment;

FIG. 3 is a functional block diagram showing the structure of a printer according to the first embodiment;

FIG. 4 is a view showing the conceptual structure of the system according to the first embodiment;

FIG. 5 is a conceptual view showing a state in which the system is formed into groups by using a managing printer as a center;

FIGS. 6A and 6B are flowcharts showing a processing of selecting the managing printer and an automatic selecting processing according to the first embodiment, respectively;

FIGS. 7A and 7B are diagrams showing two screens for the manual selection of the managing printer according to the first embodiment, respectively;

FIG. 8 is a flowchart showing a printing processing to be executed by the managing printer according to the first embodiment;

FIG. 9 is a flowchart showing a printing processing to be executed by an ordinary printer according to the first embodiment;

FIG. 10 is a flowchart showing a printer information updating processing to be executed by the ordinary printer according to the first embodiment;

FIG. 11 is a flowchart showing a transfer destination printer determining processing to be executed by the managing printer according to the first embodiment;

FIG. 12 is a diagram showing an example of the procedure for determining the transfer destination printer of printing job data according to the first embodiment;

FIGS. 13A and 13B are views showing two printer groups formed according to the a second embodiment of the present invention, respectively; and

FIGS. 14A and 14B are flowcharts showing processings to be executed by a managing printer and a managed printer, respectively.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

A specific example of the present invention will be described below in detail with reference to the drawings. FIGS. 1 to 6 show a preferred embodiment of a printing system according to the present invention. FIG. 1 shows the whole structure of the printing system according to the present example. In FIG. 1, the printing system according to the present example has a structure in which a plurality of printers (printing devices) 100 . . . and a plurality of host computers (data processing devices) 200 . . . are connected through a network line 300, and printing job data can be transmitted and printed on the printer 100 from any of the host computers 200 . . . .

FIG. 2 shows the functional block of the host computer 200. The host computer 200 includes a personal computer body (communicating means) 210, a keyboard (manual selecting means) 211 for carrying out various setting and indicating operations, a display 212 for carrying out display, a memory 213 for holding the contents of registration, a CPU (manual selecting means, grouping means, automatic selecting means) 214 for executing various operations, and a speaker 215 for outputting a voice.

FIG. 3 shows the functional block of the printer 100. The printer 100 includes a printer body (printing means, communicating means) 110, an operation panel (selecting means) 111 for carrying out various setting and display operations, a memory (storing means) 112 for holding the contents of registration, and a CPU (selecting means) 113 for executing a processing.

FIG. 4 conceptually shows the printing system according to the present example. The printers 100 . . . are annularly connected through the network line, while the host computers 200 . . . are connected to the network line. In FIG. 4, the printer is indicated as Pr 1 to Pr 7 and the host computer 200 is indicated as Pc 1 to Pc n.

Next, description will be given to the outline of a selecting processing to be executed by a managing printer and a processing of transferring printing job data with reference to FIGS. 4 and 5. In the case in which the managing printer is to be selected, an application software for selecting the managing printer is first activated in any of the host computers Pc 1 to Pc n connected onto the network to obtain the device information of each of the printers Pr 1 to Pr 7 on the network. The device information includes a printer language, a resolution, color or black and white, a printing speed, a paper size, a font, a job execution status, a memory capacity and the like.

Next, the host computers Pc 1 to Pc n select the optimum managing printer Pr 1 from the device information. By the selection, the printer Pr 1 capable of processing two different languages (for example, PCL and PS) is caused to act as a managing printer, the printers Pr 2 to Pr 4 belonging to the language PCL are allocated to one language group and the printers Pr 5 to Pr 7 belonging to the language PS are allocated to another language group, thereby forming a printer group.

FIG. 5 conceptually shows a state in which the groups are formed as described above. In an example, the printer Pr 1 is selected as the managing printer. By using the managing Pr 1 as a center, a group of the printers Pr 2, Pr 3 and Pr 4 for one language (for example, PCL) and a group of the printers Pr 5, Pr 6 and Pr 7 for another language (for example, PS) are formed. Moreover, the device information of each of the printers Pr 2 to Pr 7 on the network are always held by the managing printer Pr 1. If the device information is changed, the printers Pr 2 to Pr 7 inform the managing printer Pr 1 of the change of the device information at any time.

When the managing printer Pr 1 is selected as described above, the host computers Pc 1 to Pc n inform each of the printers Pr 2 to Pr 7 that the printer Pr 1 is the managing printer, while it transfers the device information of the printers Pr 2 to Pr 7 to the managing printer Pr 1. Thus, the selection of the managing printer is ended.

In the case in which first printing job data is transmitted from the host computer Pc 1 to the printer Pr 2 and next second printing job data is transmitted from the host computer Pc 2 to the printer Pr 2 during the printing processing, the printer Pr 2 cannot print the second printing job data before the first printing job data is completely processed. Therefore, the printer Pr 2 transfers the second printing job data to the managing printer Pr 1 and the managing printer Pr 1 decodes the contents of the second printing job data and processes the second printing job data, that is, retransfers the second printing job data to the proper printer Pr 3 or Pr 4 belonging to the same language, while it informs the host computer Pc 2 to be a source for the second printing job data that the second printing job data is transferred to the printer Pr 3 or Pr 4. The subsequent processing of the second printing job data is carried out between the host computer Pc 2 to be the source and the printer Pr 3 or Pr 4.

FIGS. 6A is a flowchart showing a selecting processing to be executed by the managing printer in the host computer 200. When the processing is started, an application software for executing the selecting processing of the managing printer is first activated (Step S100), and a dialog box for managing printing setting is displayed on the display screen of the computer 200. Therefore, a user automatically or manually selects the managing printer (Step S101). Next, a request for the transmission of printer information is given to all the printers 100 on the network (Step S102), the transmitted printer information is received (Step S103) and it is decided whether or not automatic selection is carried out (Step S104).

If the automatic selection is carried out, the optimum printer 100 is selected as the managing printer based on the printer information transmitted from all the printers 100 . . . (Step S105). If the automatic selection is not carried out, the managing printer 100 is selected by a manual operation on the display screen (Step S106). When the managing printer 100 is selected, the host computer 200 informs the selected printer 100 that the printer 100 is selected as the managing printer, transmits the printer information of all other printers 100 . . . (Step S107) and informs the non-selected printers 100 . . . of any printer 100 which has been selected as the managing printer (Step S108). Thus, the processing is ended.

FIG. 6B is a flowchart showing a subroutine for the automatic selection of the managing printer 100. When the processing is started, the maximum number of loaded languages which can be processed by the printer 100 are formed into groups (Step S105-1), from which the group having the highest information processing speed is selected as the managing printer 100 (Step S105-2). A printer group is formed for each language which can be understood by the managing printer 100 (Step S105-3). If some printers 100 are omitted from the printer group, the managing printer 100 is further selected to form a printer group (Step S105-4). Thus, the processing is ended.

In the case in which the managing printer 100 is to be automatically selected, all the language which can be processed by the printers 100 on the network should be basically understood. However, if the condition is not met, a network for a virtual printer group is built within a limited range. In such a meaning, the processing of the flowchart shown in FIG. 6B is executed. Consequently, some managing printers 100 and a printer group using them as a center are formed on the network. A certain printer 100 has the managing printer 100 for each processable language, and might have a plurality of managing printers 100 . . . .

FIG. 7 shows an example of a dialog box for managing printer setting which is displayed on the display screen of the host computer 200. FIG. 7A shows a screen for selection of a managing printer selecting method. In the present example, characters of “automatic selection” and “manual selection” and buttons of “OK” and “cancel” are displayed. In this example, the “manual selection” is selected. When “OK” is clicked in this state, a screen shown in FIG. 7B is displayed.

In FIG. 7B, the screen displays the name, language, resolution, printing speed and memory size of the printer and buttons of “automatic selection”, “OK” and “cancel” therebelow. When the user selects an optional printer 100 and clicks the “OK”, the selected printer 100 can be set to the managing printer. In the example, the following is displayed. More specifically, a printer 1 has a support language of PCL, a resolution of 600 dpi, a printing speed of 20 ppm and a memory size of 16 MB, a printer 2 has a support language of PCL, a resolution of 1200 dpi, a printing speed of 8 ppm and a memory size of 16 MB, a printer 3 has a support language of PCL, a resolution of 600 dpi, a printing speed of 16 ppm and a memory size of 8 MB, a printer A has a support language of PS, a resolution of 600 dpi, a printing speed of 20 ppm and a memory size of 16 MB, a printer B has a support language of PS, a resolution of 1200 dpi, a printing speed of 16 ppm and a memory size of 32 MB, and a printer C has a support language of PS/PCL, a resolution of 1200 dpi, a printing speed of 20 ppm and a memory size of 32 MB. The printer C is selected as the managing printer.

FIG. 8 is a flowchart showing a printing processing in the managing printer 100. When the processing is started, printing job data is received from the host computer 200 (Step S200) and it is decided whether or not a printing operation is being carried out (Step S201). If the printing operation is not being carried out, the printing operation is executed based on the received printing job data (Step S202). On the other hand, if the printing operation is being carried out, the printer language and contents of the printing job data are decoded (Step S203). Depending on the result of the decoding, a request for the printing operation is given to the other proper printer 100 and it is decided whether or not a ready signal indicative of the execution of the printing operation is returned from the printer 100 (Steps S204 and S205) The processing is repeated until the ready signal is returned. When the ready signal is returned, the printing job data is transferred to the printer 100 and the host computer 200 to be a source for a printing job signal is informed of the printer 100 to be a transfer destination (Steps S206 and S207). Thus, the processing is ended. Subsequently, the printing job data processing is carried out between the host computer 200 to be the source and the printer 100 to be the transfer destination.

FIG. 9 is a flowchart showing a printing processing in the ordinary printer 100. When the processing is started, printing job data is received from the host computer 200 (Step S300). It is decided whether or not the printing operation is being carried out (Step S301). If the printing operation is not being carried out, the printing operation is executed based on the received printing job data (Step S302). On the other hand, if the printing operation is being carried out, the printing job data is transferred to the managing printer 100 (Step S303). Thus, the processing is ended.

FIG. 10 is a flowchart showing the information updating processing of the printer 100. For example, if a memory is additionally provided or the receipt of the printing job data is changed, the processing is started to send a request signal (Req) for information transfer to the managing printer 100 (Step S400). It is decided whether or not an enabling signal (Acq) is received from the managing printer 100 (Step S401). The above-mentioned processing is repeated until the enabling signal is received. When the enabling signal is received, information is transmitted to the managing printer 100 (step S402). It is decided whether or not a receipt acknowledgment signal is received from the managing printer 100 (Step S403). The processing is repeated until the receipt acknowledgment signal is received. When the receipt acknowledgment signal is received, the processing is ended. Thus, the printer 100 informs the managing printer 100 of the contents of the change of its own printer information if any, and the managing printer 100 always holds the latest printer information.

FIG. 11 is a flowchart showing a transfer destination printer determining processing in the managing printer 100. When the managing printer 100 receives printing job data from the other printer 100 (Step S500), the printing job data is decoded and the printer information of each printer 100 is read out (Step S501). The printer 100 having the lowest processing capability which can print the printing job data received from the printer information is determined as a transfer destination printer and a request for the transfer of the printing job is transmitted to the printer 100 (Step S502). When an enabling signal indicating that the printer 100 can perform the printing operation is returned, the printing job data is transferred to the determined printer 100 (Step S504). Thus, the processing is ended. The printer 100 having the lowest processing capability is determined as the transfer destination printer in order to cope with the case in which new printing job data requires a high processing capability if any.

FIG. 12 shows an example of the procedure to be executed when the printer information and the managing printer 100 determine the transfer destination printer. In the example, a printer 1 has a support language: PCL 6, color/black and white: color, a paper: A4/A3, a resolution: 1200 dpi, a memory capacity 32 MB and a printing speed: 3 ppm, a printer 2 has a support language PCL 6, color/black and white: black and white, a paper A4/A3, a resolution: 1200 dpi, a memory capacity 32 MB and a printing speed: 20 ppm, a printer 3 has a support language PCL 5 e, color/black and white color, a paper: A4, a resolution: 600 dpi, a memory capacity: 16 MB and a printing speed 3 ppm, a printer 4 has a support language: PCL 5 e, color/black and white black and white, a paper A3, a resolution 600 dpi, a memory capacity 16 MB and a printing speed 8 ppm, a printer 5 has a support language PCL 6, color/black and white: black and white, a paper: A4/A3, a resolution: 600 dpi, a memory capacity: 32 MB and a printing speed: 16 ppm, a printer 6 has a support language: PCL 6, color/black and white: black and white, a paper: A4/A3, a resolution: 1200 dpi, a memory capacity 16 MB and a printing speed: 16 ppm, a printer 7 has a support language PCL 6, color/black and white: black and white, a paper: A4, a resolution: 600 dpi, a memory capacity: 8 MB and a printing speed: 20 ppm, a printer 8 has a support language: PCL 6, color/black and white: black and white, a paper A4, a resolution: 600 dpi, a memory capacity 16 MB and a printing speed: 8 ppm, and a printer 9 has a support language: PCL Se, color/black and white: black and white, a paper: A4, a resolution: 600 dpi, a memory capacity: 8 MB and a printing speed: 8 ppm. The printer 1 acts as the managing printer. All the printers 1 to 9 have equal fonts.

In the case in which the printing job data is transferred from the printer 7 to the managing printer 1 and the printing job data has the contents of PCL 6, black and white, A4 and 600 dpi, a candidate for the transfer destination printer is printers 2, 6 and 8 based on the printer language. The printer 8 has the lowest processing capability of the three printer. Therefore, the managing printer 1 transfers the printing job data to the printer 8, thereby executing the processing.

Second Embodiment

While the printer Pr 1 for supporting two kinds of languages, for example, PCL and PS has been used as the managing printer to manage a printer group of both languages in common in the above-mentioned embodiment, one managing printer may be provided in a printer group for each language.

FIG. 13 shows an example of a grouping processing of such printers 100 . . . . When one of the printers 100 . . . is turned ON, it broadcasts its own printer capability information, more specifically, a support language, a data processing capability and the like with respect to the other printers 100 of the same work group which are connected through a network line 300. The data processing capability implies a printing speed, a MIPS value of a CPU 113 and a memory size of a loaded memory 112. The printer 100 receiving the printer capability information broadcasts its own printer capability information on all the printers 100. Accordingly, all the printers 100 temporarily hold support languages, data processing capabilities and the like of all the printers 100 . . . in a network.

Next, each of the printers 100 . . . decides whether or not its own processing capability is the highest in the printers 100 . . . for supporting the same language as the support language. If its own processing capability is the highest, all other printers 100 . . . for supporting the same language are stored as managing printers. If its own data processing capability is not the highest, a printer having the highest processing capability is stored as the managing printer. Moreover, in the case in which there are a plurality of printers 100 having the same processing capability, the printer 100 having a low network address can act as the managing printer.

For example, a printer Pr 1 has a support language PCL, a printing speed: 20 ppm, a MIPS value of the CPU 113: 100 mips and a loaded memory size: 32 MByte, a printer Pr 2 has a support language: PCL, a printing speed 8 ppm, a MIPS value of the CPU 113: 70 mips and a loaded memory size: 8 MByte, a printer Pr 3 has a support language: PS, a printing speed 20 ppm, a MIPS value of the CPU 113: 90 mips and a loaded memory size 20 MByte, a printer Pr 4 has a support language: PS, a printing speed: 8 ppm, a MIPS value of the CPU 113: 80 mips and a loaded memory size 8 MByte, and a printer Pr 5 has a support language: PCL, a printing speed: 18 ppm, a MIPS value of the CPU 113: 100 mips and a loaded memory size 20 MByte.

When the printer Pr 1 is turned ON, it transmits its own printer capability information (a support language PCL, a printing speed: 20 ppm, a MIPS value of the CPU 113: 100 mips and a loaded memory size: 32 MByte) to all other printers Pr 2 to Pr 5. The other printers Pr 2 to Pr 5 receiving the capability information of the printer Pr 1 also transmit their own capability information to all other printers Pr 1 to Pr 5. Each of the printers Pr 1 to Pr 5 holds all other capability information.

Next, each of the printers Pr 1 to Pr 5 is formed into groups by the support language. For example, the printers Pr 1, Pr 2 and Pr 5 are formed into groups for the support language PCL and the printers Pr 3 and Pr 4 are formed into groups for the support language PS. In the same language group, the printers Pr, 1 Pr 2 and Pr 5 or the printers Pr 3 and Pr 4 compare their own data processing capabilities with those of the other printers. In the present example, the printers Pr 1 and Pr 3 have the highest processing capabilities for the support languages PCL and PS respectively, and therefore, they act as managing printers to store other same language printer Pr 2, Pr 5 or Pr 4, while the other same language printer Pr 2, Pr 5 or Pr 4 stores, as the managing printer, the printer Pr 1 or Pr 3. As a result, the printers in the network can be conceptually classified into a printer group having the support language PCL shown in FIG. 13A and a printer group having the support language PS shown in FIG. 13B.

FIG. 14 is a flowchart showing a processing of distributing printing job data. As shown in FIG. 14A, first of all, when the processing is started in the managing printer 100, a status signal generated regularly or irregularly from the printer 100 belonging to its own language group is received and it is decided whether or not the status signal includes a request for job distribution (Step S603). The above mentioned processings (Steps S601 to S603) are repeated until the request for job distribution is given.

When the request for job distribution is given, it is decided whether or not the managing printer 100 can carry out a printing processing by itself (Step S604). If the managing printer 100 can carry out the printing processing by itself, the printing operation is executed based on printing job data (Step S606). If the managing printer 100 cannot carry out the printing processing by itself, the printer 100 capable of executing the printing operation is retrieved (Steps S605 and S607). The printing job data is distributed to the retrieved printer 100 (Step S608). Thus, the processing is ended.

On the other hand, as shown in FIG. 14B, a standby state is set until the printing job data is received in the ordinary printer 100 (Step S610). If the printing job data is received, it is decided whether or not the printer 100 can carry out the printing processing by itself, that is, a large number of jobs are cued, whether or not a printer error is made during the execution of the printing job or the shortage of a paper is caused or the like (Step S611). If the printer 100 can carry out the printing processing, the printing operation is executed based on the printing job data (Step S612). If the printer 100 cannot carry out the printing processing, a request for job distribution and the printing job data are transmitted to the managing printer 100 (Step S613). Thus, the processing is ended.

For example, as shown in FIG. 13, in the case in which the languages PCL and PS are present together as printer languages in the printers Pr 1 to Pr 5 which are network connected, the managing printers Pr 1 and Pr 3 are selected for each language group. The managing printers Pr 1 and Pr 3 store printers in their own language groups, that is, the managing printer Pr 1 stores the printers Pr 2 and Pr 5 and the managing printer Pr 3 stores the printer Pr 4. The printer Pr 2, Pr 5 or Pr 4 gives a notice of its own state (status), at any time, to the managing printers Pr 1 and Pr 3 of the language group to which the printer itself belongs.

When the printer Pr 2 is set in a state in which the printing operation can be carried out and the printing job data is received in the printer group having the support language PCL, the printer Pr 2 carries out a normal printing operation. On the other hand, in the case in which the printer Pr 2 cannot carry out the printing operation due to error generation or the like, a request for job distribution is transmitted to the managing printer Pr 1 and the printing job data is transferred when the printer Pr 2 receives the printing job data. In the case in which the managing printer Pr 1 can carry out the printing operation by itself, it executes the printing operation based on the printing job data. In the case in which the managing printer Pr 1 cannot carry out the printing operation by itself, it distributes the printing job data to the printer Pr 5 having the same support language which is stored. The printer Pr 5 which can carry out the printing operation executes the printing processing based on the printing job data.

Numerous modifications and alternative embodiments of the invention will be apparent to those skilled in the art in view of the foregoing description. Accordingly, this description is to be construed as illustrative only, and is provided for the purpose of teaching those skilled in the art the best mode of carrying out the invention. The details of the structure and/or function may be varied substantially without departing from the spirit of the invention and all modifications which come within the scope of the appended claims are reserved. 

1. A printing system including a plurality of data processing devices and a plurality of printing devices for executing a printing operation when received a printing job signal from any one of the plurality of data processing devices, respectively, comprising: communication means for communicating data among the plurality of printing devices; printing means provided in each of the plurality of printing devices for executing a print job based on the print job signal; and a controller for executing the following processings; grouping the plurality of printing devices based on processing languages employed in respective printing devices, designating a managing printing device among the printing devices belonging to the same language group, transmitting a status signal from each of the printing devices belonging to the same language group to the designated managing printing device through the communication means; and transferring a printing job signal received by a printing device being inoperative to execute a print job to another one of the printing devices of the same language group to which the inoperative printing device belongs.
 2. A printing system according to claim 1, wherein the managing printing device provides with a first storage means for storing data regarding other printing devices belonging to the same language group, each of the other printing devices provides with a second storage means for storing information regarding the managing printing device of the same language group, and said controller executes the following processings: transmitting the processing language and data processing capability of each of the plurality of printing devices to all other printing devices, grouping the plurality of printing devices based on processing languages employed in respective printing devices, designating a printing device having the highest data processing capability in the same language group as the managing printing device, making the designated managing printing device store information about all other printing devices belonging to the same language group into said first storage means, and making each of all printing devices other than the managing printing device belonging to the same language group store information about the managing printing device into each second storage means.
 3. A printing system according to claim 2, wherein the controller selects a printing device to which the managing printing device has to distribute the printing job signal based on the data processing capability.
 4. A printing system including a plurality of data processing devices and a plurality of printing devices for executing a printing operation when received a printing job signal from any one of the plurality of data processing devices, respectively, comprising: communication means for communicating data among the plurality of printing devices; printing means provided in each of the plurality of printing devices for executing a print job based on the print job signal; and a controller for executing the following processings; grouping the plurality of printing devices based on processing languages employed in respective printing devices, designating a printing device capable of processing different languages in the plural language groups, transmitting a status signal from each of the printing devices belonging to the same language group to the managing printing device through the communication means; and transferring a printing job signal received by a printing device being inoperative to execute a print job to another one of the printing devices of the same language group to which the inoperative printing device belongs.
 5. A printing system according to claim 4, wherein the managing printing device provides with a first storage means for storing information regarding other printing devices belonging to the same language group, each of the other printing devices provides with a second storage means for storing data regarding the managing printing device of the same language group, and said controller executes the following processings: transmitting the processing language and data processing capability of each of the plurality of printing devices to all other printing devices, grouping the plurality of printing devices based on processing languages employed in respective printing devices, designating a printing device having the highest data processing capability in the same language group as the managing printing device, making the designated managing printing device store information about all other printing devices belonging to the same language group into said first storage means, and making each of all printing devices other than the managing printing device belonging to the same language group store information about the managing printing device into each second storage means.
 6. A printing system according to claim 5, wherein the controller selects a printing device to which the managing printing device has to distribute the printing job signal based on the data processing capability.
 7. A printing system including a plurality of data processing devices and a plurality of printing devices for executing a printing operation when received a printing job signal from any one of the plurality of data processing devices, respectively, comprising: communication means for communicating data among the plurality of printing devices; printing means provided in each of the plurality of printing devices for executing a print job based on the print job signal; and a controller for executing the following processings: grouping the plurality of printing devices based on processing languages employed in respective printing devices, designating either one of the printing devices belonging to the same language group or one printing device belonging to plural language groups as a managing printing device; transmitting individual status signals from all printing devices belonging to the same language group to the managing printing device through the communication means; and transferring a printing job signal received by a printing device being inoperative to execute a print job to another one of the printing devices of the same language group to which the inoperative printing device belongs.
 8. A printing system according to claim 7, wherein the managing printing device provides with a first storage means for storing information regarding other printing devices belonging to the same language group, each of the other printing devices provides with a second storage means for storing information regarding the managing printing device of the same language group, and said controller executes the following processings: transmitting the processing language and data processing capability of each of the plurality of printing devices to all other printing devices, grouping the plurality of printing devices based on processing languages employed in respective printing devices, designating a printing device having the highest data processing capability in the same language group as the managing printing device, making the designated managing printing device store information about all other printing devices belonging to the same language group into said first storage means, and making each of all printing devices other than the managing printing device belonging to the same language group store information about the managing printing device into each second storage means.
 9. A printing device for executing a printing operation when received a printing job signal from any one of plural data processing devices comprising: printing means for executing a print job based on the printing job signal; communication means for communicating data between the printing device and other printing devices; storage means for storing information about other printing devices having a processing language same as that of the printing device or a managing printing device managing the printing device; and a controller for executing the following processings; grouping other printing devices having a processing language same as that of the printing device; communicating data regarding the processing language and data processing capability between other printing devices belonging to the same language group while comparing the data processing capability of the printing device with those of other printing devices; if the printing device has the highest data processing capability, designating itself as a managing printing device and storing information regarding other printing devices belonging to the same language group into the storage means, and, if not, storing a printing device having the highest data processing capability among other printing devices as a managing printing device into the storage means; and if the printing device itself is the managing printing device, selecting one printing device to which the print job signal is to be delivered upon receiving a request for a print job from one of other printing devices to deliver the print job signal to the selected printing device; and if the printing device itself is inoperable to execute a print job, sending the request for a print job and the print job signal to the managing printing device.
 10. A program product stored in a recording medium executable by a computer for controlling a printing system including a plurality of data processing devices and a plurality of printing devices each of which executes a print job when received a print job signal, said program product including a program for grouping the plurality of printing devices based on processing languages employed in respective printing devices; designating one of the printing devices belonging to the same processing language group as a managing printing device; transmitting individual status signals from all other printing devices belonging to the same processing language group to the designated managing printing device; and delivering a print job signal received by one printing device being inoperable to execute a print job to one of other printing devices belonging to the same processing language group.
 11. A program product according to claim 10 wherein a processing language and data processing capability of each printing device are transmitted to all other printing devices, all printing devices are grouped into one or more groups based on individual processing languages, a printing device having the highest data processing capability among the printing devices belonging to the same processing language is assigned as a managing printing device; the managing printing device stores information about all other printing devices belonging to the same processing language group; and all other printing devices store information about the managing printing device, respectively.
 12. A program product according to claim 11, wherein the managing printing device selects a printing device to which a print job signal is to be delivered based on respective data processing capability.
 13. A program product stored in a recording medium executable by a computer for controlling a printing system including a plurality of data processing devices and a plurality of printing devices each of which executes a printing operation when received a print job signal, said program product including a program for assigning a printing device belonging to plural processing language groups as a managing printing device; transmitting respective status signals from all other printing devices belonging to each of the plural processing language groups to the managing printing device; and delivering a print job signal received by a printing device which is inoperable to execute a print job to one of other printing devices belonging to the same processing language group.
 14. A program product according to claim 13 wherein each printing device transmits its processing language and data processing capability to all other printing devices; all printing devices are grouped into one or more groups based on individual processing languages, a printing device having the highest data processing capability among the printing devices belonging to the same processing language is assigned as a managing printing device; the managing printing device stores information about all other printing devices belonging to the same processing language group; and all other printing devices store information about the managing printing device, respectively.
 15. A program product according to claim 14, wherein the managing printing device selects a printing device to which a job signal is to be delivered based on respective data processing capability.
 16. A program product stored in a recording medium executable by a computer for controlling a printing system including a plurality of data processing devices and a plurality of printing devices each of which executes a print job when received a print job signal, said program product including a program for grouping the plurality of printing devices based on processing languages employed in respective printing devices, designating either one of the printing devices belonging to the same language group or one printing device belonging to plural language groups as a managing printing device; transmitting individual status signals from all printing devices belonging to the same language group to the managing printing device; and transferring a printing job signal received by a printing device being inoperative to execute a print job to another one of the printing devices of the same language group to which the inoperative printing device belongs.
 17. A program product according to claim 16, wherein the managing printing device provides with a first storage means for storing information regarding other printing devices belonging to the same language group, each of the other printing devices provides with a second storage means for storing information regarding the managing printing device of the same language group, and said controller executes the following processings: transmitting the processing language and data processing capability of each of the plurality of printing devices to all other printing devices, grouping the plurality of printing devices based on processing languages employed in respective printing devices, designating a printing device having the highest data processing capability in the same language group as the managing printing device, making the designated managing printing device store information about all other printing devices belonging to the same language group into said first storage means, and making each of all printing devices other than the managing printing device belonging to the same language group store information about the managing printing device into each second storage means.
 18. A method for controlling a printing system including a plurality of data processing devices and a plurality of printing devices for executing a print job when received a print job signal from any one of the plurality of printing devices, respectively comprising the steps of: grouping the plurality of printing devices based on processing languages employed in respective printing devices; designating a managing printing device among the printing devices belonging to the same language group; transmitting a status signal from each of all printing devices belonging to the same language group to the managing printing device; and transferring a print job signal received by a printing device being inoperative to execute a print job to another one of the printing devices of the same language group to which the inoperative printing device belongs.
 19. A method for controlling a printing system including a plurality of data processing devices and a plurality of printing devices for executing a print job when received a print job signal from any one of the plurality of printing devices, respectively comprising the steps of: grouping the plurality of printing devices based on processing languages employed in respective printing devices; designating a printing device capable of processing different languages in the plural language groups among the printing devices as a managing printing device; transmitting a status signal from each of all printing devices belonging to the same language group to the managing printing device; and transferring a print job signal received by a printing device being inoperative to execute a print job to another one of the printing devices of the same language group to which the inoperative printing device belongs.
 20. A method for controlling a printing system including a plurality of data processing devices and a plurality of printing devices for executing a print job when received a print job signal from any one of the plurality of printing devices, respectively comprising the steps of: grouping the plurality of printing devices based on processing languages employed in respective printing devices; selectively designating either one of the printing devices belonging to the same language group or one printing device belonging to plural language groups as a managing printing device; transmitting a status signal from each of all printing devices belonging to the same language group to the managing printing device; and transferring a print job signal received by a printing device being inoperative to execute a print job to another one of the printing devices of the same language group to which the inoperative printing device belongs.
 21. A printing system including a plurality of data processing devices and a plurality of printing devices for executing a printing operation when received a printing job signal from any one of the plurality of data processing devices, respectively, comprising: communication means for communicating data among the plurality of printing devices; printing means provided in each of the plurality of printing devices for executing a print job based on the print job signal; storage means for storing device information of other printing devices; and a controller for executing the following processings; grouping the plurality of printing devices based on processing languages employed in respective printing devices into plural language groups; designating a printing device having the highest data processing capability among printing devices capable of processing at least two different languages; storing device information about all printing devices belonging to each of the language groups processable by the designated managing printing device; and transferring a printing job data being transferred from any printing device to another printing device belonging to the same language group.
 22. A printing system according to claim 21 wherein the controller selects the managing printing device based on the device information about the plurality of printing devices, groups the plurality of printing devices based on respective processing languages processable by the managing printing device, transmits device information about printing devices belonging to respective processing languages processable by the managing printing device and notifies information about the managing printing device to all other printing devices belonging to the respective language groups.
 23. A printing system according to claim 22 further comprising a manual selection means for selecting the managing printing device manually and arbitrarily based on the device information of the plurality of printing devices.
 24. A printing system according to claim 21, wherein the controller transfers a print job data, when transferred from any printing device to the managing printing device, to a printing device having the lowest data processing capability among the printing devices belonging to the same language group.
 25. A printing device for executing a print job when received a printing job signal from any one of plural data processing devices comprising: printing means for executing a print job based on the printing job signal; communication means for communication data between the printing device and other printing devices; storage means for storing information about other printing devices having a processing language same as that of the printing device or a managing printing device managing the printing device; and a controller for executing the following processings; if the printing device itself has been selected as the managing printing device, storing device information regarding other printing devices belonging to the same language group into the storage means, and, if not, storing the managing printing device of the printing device, storing device information regarding the managing printing device; if the printing device itself is not the managing printing device and is inoperative to execute a print job, transferring print job data to the managing printing device through the communication means; and if the printing device itself is the managing printing device, transferring print job data to a printing device of the same language group which is operative to execute a print job.
 26. A program product stored in a recording medium executable by a computer for controlling a printing system including a plurality of data processing devices and a plurality of printing devices each of which executes a print job when received a print job signal, said program product including a program for grouping the plurality of printing devices based on processing languages employed in respective printing devices; designating a printing device belonging to at leas two language groups and having the highest data processing capability as a managing printing device; storing device information regarding all printing devices belonging to individual language groups processable by the managing printing device; and when print job data is transferred from any one of the printing devices, transferring the print job data to a printing device belonging to the same language group.
 27. A program product according to claim 26 wherein further executes the following processings: selecting a printing device belonging to at least two language groups and having the highest data processing capability among the printing devices belonging to at least two language groups as a managing printing device; grouping the plurality of printing devices based on processing languages processable by respective printing devices, and transmitting device information regarding all printing devices belonging to the language groups processable by the managing printing device and notifying the managing printing device to printing devices belonging to each language group.
 28. A program product according to claim 27 in which the managing printing device is manually and arbitrarily selectable among the plurality of printing devices.
 29. A program product according to claim 26 in which the print job data, when transferred from any printing device to the managing printing device, is transferred to a printing device having the lowest data processing capability among the printing devices belonging to the same language group.
 30. A method for controlling a printing system including a plurality of data processing devices and a plurality of printing devices each executing a print job when received a print job signal, comprising steps of: (a) grouping the plurality of printing devices based on processing languages employed in respective printing devices; (b) designating a printing device belonging to at least two language groups and having the highest data processing capability among printing devices belonging to at least two language groups; (c) storing device information regarding all printing devices belonging to respective language groups processable by the managing printing device; and (d) transferring print job data, when transferred from any printing device, to another printing device belonging to the same language group. 